]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
ci/check-commit-log: Reverse the merge request URL check
authorJonas Ådahl <jadahl@gmail.com>
Fri, 6 Nov 2020 16:59:28 +0000 (17:59 +0100)
committerMarge Bot <marge-bot@gnome.org>
Tue, 17 Nov 2020 17:29:55 +0000 (17:29 +0000)
Instead of making sure there is a reference to a bug or merge request,
make sure there isn't. The reason for this is that marge-bot will always
append a merge request URL in the end of the commit message.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1491>

.gitlab-ci/check-commit-log.sh

index 8d0e2ee039e3e4ac2ba13ad04c62a04252b3ae06..5a469328d69a5e68583fb23cea933f6cc040f19a 100755 (executable)
@@ -16,16 +16,16 @@ if [ -z "$commits" ]; then
   exit 1
 fi
 
-function commit_message_has_url() {
+function commit_message_has_mr_url() {
   commit=$1
   commit_message=$(git show -s --format='format:%b' $commit)
-  echo "$commit_message" | grep -qe "\($CI_MERGE_REQUEST_PROJECT_URL/\(-/\)\?\(issues\|merge_requests\)/[0-9]\+\|https://bugzilla.gnome.org/show_bug.cgi?id=[0-9]\+\)"
+  echo "$commit_message" | grep -qe "^$CI_MERGE_REQUEST_PROJECT_URL\/\(-\/\)\?merge_requests\/$CI_MERGE_REQUEST_IID$"
   return $?
 }
 
 for commit in $commits; do
-  if ! commit_message_has_url $commit; then
-    echo "Missing merge request or issue URL on commit $(echo $commit | cut -c -8)"
+  if commit_message_has_mr_url $commit; then
+    echo "Commit $(echo $commit | cut -c -8) message must not contain a link to its own merge request"
     exit 1
   fi
 done